package com.benmei.weike.service;

import com.benmei.weike.dao.AgoraUidDao;
import com.benmei.weike.entity.AgoraUid;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;

/**
 * Created by Peter on 2018/11/1.
 */
@Service
public class AgoraUidService {
    @Resource
    private AgoraUidDao agoraUidDao;

    /**
     * 查询（没有就创建）学生/老师的 agora_uid。声网专用字段：用户 ID。表示该回调报告的是持有该ID的用户的网络质量。
     * 生产环境为正数，测试环境为复数（数字相同）
     *
     * @param role   1学生；2老师
     * @param ext_id 如果role=1则ext_id就是memb_id；如果role=2则ext_id就是tea_id
     * @return
     */
    public synchronized Integer getAgoraUid(Integer role, Integer ext_id) {
        AgoraUid agoraUid = agoraUidDao.find(role, ext_id);
        if (agoraUid == null) {
            agoraUid = new AgoraUid(role, ext_id);
            agoraUidDao.insert(agoraUid);
        }
        return agoraUid.getAgora_uid();
    }
}
